package com.example.examsystem.model;

/**
 * 考试状态枚举
 */
public enum ExamStatus {
    /**
     * 草稿状态
     */
    DRAFT("草稿"),
    
    /**
     * 已发布
     */
    PUBLISHED("已发布"),
    
    /**
     * 进行中
     */
    ONGOING("进行中"),
    
    /**
     * 已结束
     */
    FINISHED("已结束"),
    
    /**
     * 已归档
     */
    ARCHIVED("已归档"),
    
    /**
     * 已取消
     */
    CANCELLED("已取消");
    
    private final String displayName;
    
    ExamStatus(String displayName) {
        this.displayName = displayName;
    }
    
    public String getDisplayName() {
        return displayName;
    }
    
    /**
     * 根据显示名称获取枚举值
     */
    public static ExamStatus fromDisplayName(String displayName) {
        for (ExamStatus status : values()) {
            if (status.displayName.equals(displayName)) {
                return status;
            }
        }
        throw new IllegalArgumentException("未知的考试状态: " + displayName);
    }
}




